package Modelo;

import java.io.Serializable;
import javax.persistence.Entity;
import javax.persistence.EntityManager;
import javax.persistence.EntityManagerFactory;
import javax.persistence.Persistence;
import javax.persistence.Query;

@Entity
public class PreguntaAbierta extends Pregunta implements Serializable {

    private String maxcara;
    private String alto;
    private String ancho;

    public PreguntaAbierta() {
        super();
    }

    public PreguntaAbierta(String pregunta, String tipo, String max, String alto, String ancho) {
        super(pregunta, tipo);
        maxcara = max;
        this.alto=alto;
        this.ancho=ancho;
    }

    public String getMaxcara() {
        return maxcara;
    }

    public String getAlto() {
        return alto;
    }

    public void setAlto(String alto) {
        this.alto = alto;
    }

    public String getAncho() {
        return ancho;
    }

    public void setAncho(String ancho) {
        this.ancho = ancho;
    }
    
    public void setMaxcara(String maxcara) {
        this.maxcara = maxcara;
    }

    public Long agregarP(String pre, String tipo, String max, String alto, String ancho) {
        EntityManagerFactory emf = Persistence.createEntityManagerFactory("APU");
        EntityManager em = emf.createEntityManager();
        PreguntaAbierta pa = new PreguntaAbierta(pre, tipo, max, alto, ancho);
        em.getTransaction().begin();
        em.persist(pa);
        em.getTransaction().commit();
        Query q = em.createQuery("select Max(c.id) from Pregunta c");
        return (Long) q.getSingleResult();
    }

    public void actualizar(String pre, Long id, String max) {
        EntityManagerFactory emf = Persistence.createEntityManagerFactory("APU");
        EntityManager em = emf.createEntityManager();
        PreguntaAbierta p = em.find(PreguntaAbierta.class, id);
        em.getTransaction().begin();
        p.setPregunta(pre);
        p.setMaxcara(max);
        em.getTransaction().commit();
        em.close();
        emf.close();
    }

    public void actualizarTodo(String pre, Long id, String max,String alto,String ancho) {
        EntityManagerFactory emf = Persistence.createEntityManagerFactory("APU");
        EntityManager em = emf.createEntityManager();
        PreguntaAbierta p = em.find(PreguntaAbierta.class, id);
        em.getTransaction().begin();
        p.setAlto(alto);
        p.setAncho(ancho);
        p.setPregunta(pre);
        p.setMaxcara(max);
        em.getTransaction().commit();
        em.close();
        emf.close();
    }
}
